package com.zzw.system.annotation;

import com.zzw.system.enums.BusinessType;
import com.zzw.system.enums.OperatorType;

import java.lang.annotation.*;

/**自定义操作日志记录注解
 * @author zzw
 * @date 2023/4/26 14:24
 */
@Documented //文档
@Retention(RetentionPolicy.RUNTIME) //在运行时可以获取
@Target({ ElementType.PARAMETER, ElementType.METHOD}) //作用到参数，方法上等
public @interface Log {

    /**
     * 模块
     */
    public String title() default "";

    /**
     * 功能
     */
    public BusinessType businessType() default BusinessType.OTHER;

    /**
     * 操作人类别
     */
    public OperatorType operatorType() default OperatorType.MANAGE;

    /**
     * 是否保存请求的参数
     */
    public boolean isSaveRequestData() default true;

    /**
     * 是否保存响应的参数
     */
    public boolean isSaveResponseData() default true;
}
